//
//  YDBBannerParam.swift
//  BaseFramework
//
//  Created by 杨东宝 on 2020/5/8.
//  Copyright © 2020 杨东宝. All rights reserved.
//

import UIKit

class YDBBannerParam: NSObject {
    
    /* =========================================Attributes==========================================*/
    //MARK:-布局方式 frame  必传
    var wFrame:CGRect!
    //MARK:-数据源 必传
    var wData:Array<Any>!
    //MARK:-开启缩放 default false
    var wScale:Bool = false
    //MARK:-开启卡片重叠模式 default false
    var wCardOverLap:Bool = false
    //MARK:-卡片重叠显示个数 default 4
    var wCardOverLapCount:Int = 4
    //MARK:-背景毛玻璃效果 default false
    var wEffect:Bool = false
    //MARK:-隐藏pageControl default false
    var wHideBannerControl:Bool = false
    //MARK:-是否允许手势滑动 default true
    var wCanFingerSliding:Bool = true
    //MARK:-图片不变形铺满 默认 true
    var wImageFill:Bool = true
    //MARK:-开启无线滚动 default false
    var wRepeat:Bool = false
    //MARK:-开启自动滚动 default false
    var wAutoScroll:Bool = false
    //MARK:-纵向(cell全屏的时候有效) default false
    var wVertical:Bool = false
    //MARK:-跑马灯(文字效果) default false
    var wMarquee:Bool = false
    //MARK:-点击左右居中
    var wClickCenter:Bool = true
    //MARK:-中间视图放最上面 default false
    var wZindex:Bool = false
    //MARK:-增加快速滑动的回弹动画 default false
    var wAddFastScrollAnina:Bool = false
    //MARK:-整体间距 默认UIEdgeInsetsMake(0,0, 0, 0)
    var wSectionInset:UIEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
    //MARK:-整体视图缩放系数 default 1
    var wScreenScale:Float = 1
    //MARK:-毛玻璃背景的高度 (视图的高度*倍数) default 1 范围0~1
    var wEffectHeight:Float = 1
    //MARK:-缩放系数 数值越大缩放越大 default 0.5 卡片叠加效果时默认为0.8
    var wScaleFactor:Float = 0.5
    //MARK:-左右的透明度 default 1
    var wAlpha:Float = 1
    //MARK:-垂直缩放 数值越大缩放越小 default 400
    var wActiveDistance:Float = 400
    //MARK:-item的size default 视图的宽高 item的width最小为父视图的一半 (为了保证同屏最多显示3个 减少不必要的bug)
    var wItemSize:CGSize?
    //MARK:-item的之间的间距 default 0
    var wLineSpacing:CGFloat = 0
    //MARK:-滑动的时候偏移的距离 以倍数计算 default 0.5 正中间
    var wContentOffsetX:CGFloat = 0.5
    //MARK:-左右相邻item的中心点 default BannerCellPositionCenter
    var wPosition:BannerCellPosition = .BannerCellPositionCenter
    //MARK:-占位图片 默认
    var wPlaceholderImage:String?
    //MARK:-数据源的图片字段 默认 icon
    var wDataParamIconName:String? = "icon"
    //MARK:-滚动减速时间 default Fast
    var wDecelerationRate:UIScrollView.DecelerationRate = 0.1
    //MARK:-自动滚动间隔时间 default 3.0f
    var wAutoScrollSecond:Float = 3
    //MARK:-默认移动到第几个 default 0
    var wSelectIndex:Int = 0
    //MARK: -自定义cell内容 默认是Collectioncell类
    var wMyCell:BannerCellCallBlock?
    //MARK:-自定义cell的类 自定义视图必传 不然会crash
    var wMyCellClassName:AnyObject?
    //MARK:-系统的圆点颜色  default  ffffff
    var wBannerControlColor:UIColor = UIColor.white
    //MARK:-系统的圆点选中颜色  default  orange
    var wBannerControlSelectColor:UIColor = UIColor.orange
    //MARK:-自定义安全的圆点图标  default
    var wBannerControlImage:String?
    //MARK:-自定义安全的选中圆点图标  default
    var wBannerControlSelectImage:String?
    //MARK:-自定义安全的圆点图片圆角 default ImageSize/2
    var wBannerControlImageRadius:CGFloat?
    //MARK:-自定义安全的圆点图标的size  default (10,10)
    var wBannerControlImageSize:CGSize = CGSize(width: 10, height: 10)
    //MARK:-自定义安全的选中圆点图标的size (10,10)
    var wBannerControlSelectImageSize:CGSize = CGSize(width: 10, height: 10)
    //MARK:-自定义圆点的间距 default 3
    var wBannerControlSelectMargin:Float = 3
    //MARK:-自定义pageControl
    var wCustomControl:BannerPageControl?
    //MARK:-pageControl的位置 default BannerControlCenter
    var wBannerControlPosition:BannerControlPosition = .BannerControlCenter
    
    //MARK:-跑马灯文字颜色  default  red
    var wMarqueeTextColor:UIColor = UIColor.red
    
    //MARK:-跑马灯速度  default  5
    var wMarqueeRate:Float = 5
    
    /* =========================================Attributes==========================================*/

    /* =========================================Events==============================================*/
    
    //MARK:-点击方法
    var wEventClick:BannerClickBlock?
    //MARK:-点击方法 可获取居中cell
    var wEventCenterClick:BannerCenterClickBlock?
    //MARK:-每次滚动结束都会调用 最好是关闭自动滚动的场景使用
    var wEventScrollEnd:BannerScrollEndBlock?
    /* =========================================Events==============================================*/

    
    
    
    /* =========================================custom==============================================*/
    var myCurrentPath:Int = 0
    /* =========================================custom==============================================*/

}


